using System;
using SimpleServiceBus.Endpoint;
using SimpleServiceBus.Endpoint.Management.Monitoring.Server;
using SimpleServiceBus.Messages;

namespace SimpleServiceBus.Endpoint.Management.Monitoring.Server
{
    public interface IEndpointMonitorServerService : IEndpointService
    {
        TimeSpan EndpointMonitorInterval { get; set; }
        event EventHandler<EndpointStatusEventArgs> EndpointStatusUpdated;
        event EventHandler<EndpointStatusEventArgs> EndpointStatusExpired;

        void UpdateEndpointStatus(EndpointMessage message);
    }
}